package com.tencent.sr.iris.activity.interfaces.message;

/**
 * 描述用途
 *
 * @author wruiiwang
 * @date 2023/2/17
 */

import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;
import lombok.experimental.Accessors;

@Getter
@Setter
@Accessors(chain = true)
@ToString
public class ShareVisitChangeEvent {

    public static final String COL_ID = "id";
    public static final String COL_RUN_TIME_KEY = "run_time_key";
    public static final String COL_SHARE_VISIT_TIME = "share_time";
    public static final String COL_UID = "uid";
    public static final String COL_SHARE_UV_TO_29 = "share_count_to_29";
    public static final String COL_SHARE_UV_TO_END_OF_MONTH = "share_count_to_end_of_month";
    public static final String COL_UPDATE_TIME = "update_time";
    public static final String COL_ETL_STAMP = "etl_stamp";

    private Long id;
    @ApiModelProperty("跑数批次时间,格式：YYYYMMDDHHFF")
    private String runTimeKey;
    @ApiModelProperty("分享访问统计日期,格式：YYYY-MM-DD")
    private String shareTime;
    private String uid;
    @ApiModelProperty("t+29引入uv数")
    private Long shareCountTo29;
    @ApiModelProperty("t+月末引入uv数")
    private Long shareCountToEndOfMonth;
    @ApiModelProperty("更新时间")
    private String updateTime;
    @ApiModelProperty("etl处理时间戳")
    private String etlStamp;

    public String idempotent() {
        return uid + "_" + etlStamp + "_" + runTimeKey + "_" + shareTime;
    }
}
